package com.hsxc.cdz.base.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * @author 陈钊
 * @version 创建时间：2016年5月31日 下午1:02:06 类说明：
 */
public class TimeFormatter {

	//主要使用的两个转换格式
	public static SimpleDateFormat myFmt2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	public static SimpleDateFormat myFmt1 = new SimpleDateFormat("yyyyMMddHHmmss");
	/**
	 * 将纯数字时间格式化为带-及：的字符
	 * @param sourcetime
	 * @return
	 */
	public static String getTime(String sourcetime) {
		
		if (sourcetime == null) {
			return null;
		}
		if (sourcetime.length() != 14)
			return sourcetime;
		Date date = null;
		try {
			date = myFmt1.parse(sourcetime);
		} catch (ParseException e) {
			e.printStackTrace();
		}
		return myFmt2.format(date);
	}
	/**
	 * 把当前时间转化数据库时间格式,只有月日时分
	 * @return
	 */
	public static String toTime(){
		SimpleDateFormat myFmt1 = new SimpleDateFormat("MMddHHmm");
		return myFmt1.format(new Date());
	}
	
	/**
	 * 把当前时间转化数据库时间格式,只有月日时分秒
	 * @return
	 */
	public static String toTimeYear() {
		return myFmt1.format(new Date());
	}

	/**
	 * 将字符时间转换为日历对象
	 * @param sourceTime
	 * @return
	 */
	public static Calendar dateFromString(String sourceTime){
		//SimpleDateFormat formatDate = new SimpleDateFormat("yyyyMMddHHmmss");
		Calendar calendar = Calendar.getInstance();
		try {
			Date date =  myFmt1.parse(sourceTime);
			calendar.setTime(date);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return calendar;
	}
	public static String strFromCalendar(Calendar calendar){
		return myFmt2.format(calendar.getTime());
	}
}
